home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / lisp / elk-2_0.lha / elk-2.0 / lib / xt / accelerator.c next >
C/C++ Source or Header  |  1991-09-27  |  941b  |  36 lines

  1. #include "xt.h"
  2.  
  3. XtAccelerators Get_Accelerators (a) Object a; {
  4.     register char *s;
  5.     XtAccelerators ret;
  6.     Declare_C_Strings;
  7.  
  8.     Make_C_String (a, s);
  9.     if ((ret = XtParseAcceleratorTable (s)) == 0)
  10.     Primitive_Error ("bad accelerator table: ~s", a);
  11.     Dispose_C_Strings;
  12.     return ret;
  13. }
  14.  
  15. static Object P_Install_Accelerators (dst, src) Object dst, src; {
  16.     Check_Widget (dst);
  17.     Check_Widget (src);
  18.     XtInstallAccelerators (WIDGET(dst)->widget, WIDGET(src)->widget);
  19.     return Void;
  20. }
  21.     
  22. static Object P_Install_All_Accelerators (dst, src) Object dst, src; {
  23.     Check_Widget (dst);
  24.     Check_Widget (src);
  25.     XtInstallAllAccelerators (WIDGET(dst)->widget, WIDGET(src)->widget);
  26.     return Void;
  27.  
  28. }
  29.  
  30. init_xt_accelerator () {
  31.     Define_Primitive (P_Install_Accelerators,
  32.             "install-accelerators",       2, 2, EVAL);
  33.     Define_Primitive (P_Install_All_Accelerators,
  34.             "install-all-accelerators",   2, 2, EVAL);
  35. }
  36.